home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1986 July / 64er_Magazin_86-07_1986_Markt__Technik_de.d64 / small change (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  2KB  |  86 lines

  1. 10 rem *** zeichensatzaenderung ***
  2. 20 rem *** fuer "the newsroom"  ***
  3. 30 rem ***    kleine schrift    ***
  4. 50 poke53280,3:poke53281,3:print"[147]"
  5. 100 dimb(2000)
  6. 110 open 3,8,3,"sfnts,p,r"
  7. 115 print"bitte geduld - pures basic"
  8. 120 an=an+1:gosub 1000:b(an)=a
  9. 130 if st=0 then120
  10. 140 close 3
  11. 200 for l=4to199
  12. 210 ifb(l)=0then 310
  13. 220 gosub2000:print""
  14. 230 fork=0to7
  15. 240 form=0to7
  16. 250 if(b(l*8+171+k)and2^m)=0then270
  17. 260 poke1080+k*40+(7-m),81
  18. 270 poke55352+k*40+(7-m),6
  19. 300 nextm,k
  20. 305 print"zeichen #:"l
  21. 310 print"breite   :"b(l)
  22. 315 x=0:y=0:poke1080,peek(1080)or128
  23. 320 geta$:ifa$=""then320
  24. 325 ifa$="*"theninput"zeichen #:";l:goto210
  25. 326 ifa$="@"theninput"neue zeichen #:";l:gosub1700:goto410
  26. 330 if a$="^"thenl=199:goto410
  27. 340 if a$=""thengosub1100
  28. 350 if a$="[157]"thengosub1200
  29. 360 if a$=""thengosub1300
  30. 370 if a$="[145]"thengosub1400
  31. 380 ifa$="="thengosub1600
  32. 390 ifa$=chr$(13)thengosub1700:goto410
  33. 395 ifa$=" "then 410
  34. 400 goto 320
  35. 410 nextl
  36. 420 open3,8,3,"@:newfonts,p,w"
  37. 430 forl=1toan
  38. 440 print#3,chr$(b(l));
  39. 450 next
  40. 460 close3
  41. 470 end
  42. 880 nextl:end
  43. 1000 get#3,a$
  44. 1010 ifa$=""thena=0:return
  45. 1020 a=asc(a$):return
  46. 1100 rem *** cursor rechts ***
  47. 1110 gosub 1500
  48. 1120 if x<6then x=x+1
  49. 1130 gosub 1500
  50. 1140 return
  51. 1200 rem *** cursor links ***
  52. 1210 gosub 1500
  53. 1220 if x>0then x=x-1
  54. 1230 gosub 1500
  55. 1240 return
  56. 1300 rem *** cursor runter ***
  57. 1310 gosub 1500
  58. 1320 if y<7then y=y+1
  59. 1330 gosub 1500
  60. 1340 return
  61. 1400 rem *** cursor rauf ***
  62. 1410 gosub 1500
  63. 1420 if y>0then y=y-1
  64. 1430 gosub 1500
  65. 1440 return
  66. 1500 rem *** cursor setzen/loeschen ***
  67. 1510 ifpeek(1080+x+y*40)>128thenpoke1080+x+y*40,peek(1080+x+y*40)and127:return
  68. 1520 poke1080+x+y*40,peek(1080+x+y*40)or128:return
  69. 1600 rem *** punkt setzen/loeschen ***
  70. 1610 if peek(1080+x+y*40)=160thenpoke1080+x+y*40,209:return
  71. 1620 if peek(1080+x+y*40)=209thenpoke1080+x+y*40,160:return
  72. 1700 rem *** neues zeichen ***
  73. 1710 gosub1500:input"breite   ";b(l)
  74. 1720 fork=0to7:b(l*8+171+k)=0
  75. 1730 form=0to7
  76. 1740 ifpeek(1080+k*40+(7-m))=81thenb(l*8+171+k)=b(l*8+171+k)or2^m
  77. 1750 nextm,k
  78. 1760 return
  79. 2000 rem *** bildschirmaufbau ***
  80. 2010 print"[147]                        "
  81. 2020 fork=1to8
  82. 2030 print"                 "
  83. 2040 next
  84. 2050 print"                        "
  85. 2060 return
  86.